package de.hska.swlab.iwwdnw.gui;

import de.hska.swlab.iwwdnw.helper.ConsoleReader;
import de.hska.swlab.iwwdnw.model.IWWWDNW;

public class GuiNamenSetzen implements GuiController {

	private int spieler;
	private String name;
	
	@Override
	public void execute(final IWWWDNW spiel) {
		String status = spiel.getSpielStatus().toString();
		spieler = Integer.parseInt(status.substring(status.length() - 1));

		// namen pruefen, länge und existiert noch nicht
		name = null;
		boolean korrekt = false;
		while (!korrekt) {
			System.out.print("Namen fuer Spieler " + spieler + " eingeben: ");
			name = ConsoleReader.readLine().trim();
			if (name.length() == 2) {
				boolean isBuchstabe = true;
				for (int i = 0; i < name.length(); i++) {
					if (Character.isDigit(name.charAt(i))) {
						System.out.println("Es sind keine Nummern erlaubt!\n");
						isBuchstabe = false;
						break;
					}
				}
				if (isBuchstabe) {
					if (spiel.existiertName(name)) {
						System.out.println("Name existiert schon!\n");
					} else {
						korrekt = true;
					}
				}
			} else {
				System.out.println("2 Zeichen muessen es sein!\n");
			}
		}

		spiel.setName(spieler - 1, name);
//		new Thread() {
//			@Override
//			public void run() {
//			}
//		}.start();
	}
}
